package com.project.mapper;

import com.github.pagehelper.PageInfo;
import com.project.bean.TopicBean;
import org.apache.ibatis.annotations.*;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 主题表业务成持久接口
 */
public interface ITopicMapper {
    /**
     * 动态分页查询按发帖最新时间排序
     * 同时查询回帖数
     * @param id 频道id
     * @param name 主题名
     * @param author 作者
     * @param startDate 起始时间
     * @param endDate 结束时间
     * @return 分页对象
     */
    public List<TopicBean> findByItem(@Param("id") int id,
                                      @Param("name") String name,
                                      @Param("author") String author,
                                      @Param("startDate") LocalDateTime startDate,
                                      @Param("endDate")LocalDateTime endDate);



    /**
     * 添加主贴
     * @param topic 主贴对象
     */
    @Insert("INSERT INTO t_topic(t_topicName,t_topicInfo,t_time,fk_channelId,fk_tusersId)VALUES(#{name},#{info},#{date},#{channel.id},#{user.id})")
    public void add(TopicBean topic);



    /**
     * 按照编号查找主题
     * 同时查找该主贴中的跟帖
     * @param id 主题编号
     * @return 主体对象
     */
    public TopicBean findById(int id);


}
